Spring Bean的生命週期是指從創建到銷毀的整個過程,我們按照順序來分析了解:
@PostConstruct
註解來標記。@PreDestroy
註解來標記,Spring容器釋放Bean占用的資源,例如關閉文件、斷開數據庫連接等。當然Bean可以根據你自己的需求對他進行自定義的生命週期!!!
當然,以下是一個包含Spring Bean生命週期的簡單示例。在這個示例中,我們將創建一個名為MrBean
的Spring Bean,並定義它的初始化和銷毀方法。
首先,我們將創建一個MrBean
類:
public class MrBean {
private String name;
public void init() {
System.out.println("初始化Bean");
}
public void destroy() {
System.out.println("銷毀Bean");
}
public void setName(String name) {
this.name = name;
}
public void sayTeddy() {
System.out.println("Hi, " + name + "!");
}
}
接下來,我們將在Spring配置文件中定義這個Bean,並設置其初始化和銷毀方法:
<bean id="mrBean" class="com.example.MrBean" init-method="init" destroy-method="destroy">
<property name="name" value="Teddy" />
</bean>
<bean>
元素定義了mrBean
,指定類型為com.example.MrBean
。我們還使用init-method
屬性指定了初始化方法為init
,destroy-method
屬性指定銷毀方法為destroy
,最後注入了一個名為name
的屬性值。
接著,我們可以程式中使用這個Bean:
public class MainApp {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
MrBean mrBean = (MrBean) context.getBean("mrBean");
mrBean.sayTeddy();
((ConfigurableApplicationContext) context).close();
}
}
這就是一個完整的Bean週期範例咯!
https://docs.spring.io/spring-framework/reference/overview.html
https://www.baeldung.com/spring-bean
https://www.tutorialspoint.com/spring/spring_bean_life_cycle.htm